Kansas Economic Data
  • Home
  • About

Definitions

# Unemployment vs. Underemployment
> Alternative measures of labor underutilization.

- toc: true
- author: Nigel Soria
- badges: true
- categories: [bls, unemployment, discouraged]
- permalink: /labor-utilization/
- image: images/ks-lau.png
SyntaxError: invalid syntax (400432821.py, line 2)

The six measures are based on the following definitions:

  • U-1, persons unemployed 15 weeks or longer, as a percent of the civilian labor force;
  • U-2, job losers and persons who completed temporary jobs, as a percent of the civilian labor force;
  • U-3, total unemployed, as a percent of the civilian labor force (this is the definition used for the official unemployment rate);
  • U-4, total unemployed plus discouraged workers, as a percent of the civilian labor force plus discouraged workers;
  • U-5, total unemployed, plus discouraged workers, plus all other marginally attached workers, as a percent of the civilian labor force plus all marginally attached workers; and
  • U-6, total unemployed, plus all marginally attached workers, plus total employed part time for economic reasons, as a percent of the civilian labor force plus all marginally attached workers.
#hide

import numpy as np
import pandas as pd
import requests
import scipy.stats as ss
import matplotlib as mpl
import json
import plotly.graph_objects as go
from urllib.request import urlopen
from IPython.display import Image
from IPython.display import HTML

Labor Underutilization Rates for Kansas, 2003-2019 Annual Averages

Double clicking on one of the items in the legend will isolate that series. Double clicking again will bring back the lines for the other measures.

#hide

df = pd.read_csv('data/ks-lau.csv')

fig = go.Figure()

fig.add_trace(go.Scatter(x=df.year, y=df.u1,
                    mode='lines',
                    name='U-1'))
fig.add_trace(go.Scatter(x=df.year, y=df.u2,
                    mode='lines',
                    name='U-2'))
fig.add_trace(go.Scatter(x=df.year, y=df.u3,
                    mode='lines',
                    name='U-3'))
fig.add_trace(go.Scatter(x=df.year, y=df.u4,
                    mode='lines',
                    name='U-4'))
fig.add_trace(go.Scatter(x=df.year, y=df.u5,
                    mode='lines',
                    name='U-5'))
fig.add_trace(go.Scatter(x=df.year, y=df.u6,
                    mode='lines',
                    name='U-6'))


annotations = []

annotations.append(dict(xref='paper', yref='paper', x=0.5, y=-0.1,
                              xanchor='center', yanchor='top',
                              text='Source: Bureau of Labor Statistics',
                              font=dict(family='Arial',
                                        size=12,
                                        color='rgb(150,150,150)'),
                              showarrow=False))

fig.update_layout(
    annotations=annotations,
    xaxis=dict(
        showline=True,
        showgrid=False,
        showticklabels=True,
        linecolor='rgb(204, 204, 204)',
        linewidth=2,
        ticks='outside',
#         tickmode = 'array',
#         tickvals= list(range(2003,2020)),
        tickfont=dict(
            family='Arial',
            size=12,
            color='rgb(82, 82, 82)',
        ),
    ),
    yaxis=dict(
        showline=True,
        showgrid=False,
        showticklabels=True,
        linecolor='rgb(204, 204, 204)',
        linewidth=2,
        ticks='outside',
        tickfont=dict(
            family='Arial',
            size=12,
            color='rgb(82, 82, 82)',
        ),
    ),
    autosize=True,
    margin=dict(
        autoexpand=True,
        l=100,
        r=20,
        t=50,
    ),
    plot_bgcolor='white'
)

fig.show()
#hide_input

HTML(fig.to_html(include_plotlyjs='cdn'))
#hide

df = pd.read_csv('data/states-lau.csv')

names = ['State', 'U-1', 'U-2', 'U-3', 'U-4', 'U-5', 'U-6']

ks_gold ='#F1AD02'
ks_blue ='#002569'
rowEvenColor = 'lightgrey'
rowOddColor = 'white'

fig = go.Figure(data=[go.Table(
    header=dict(values=names,
                fill_color=ks_blue,
                font=dict(color=ks_gold, size=12),
                line_color='grey',
                align='center'),
    cells=dict(values=[df.state, df.u1, df.u2, df.u3, df.u4, df.u5, df.u6],
               fill_color=[[rowOddColor,rowEvenColor]*len(df.state)],
               line_color='grey',
               font=dict(color=ks_blue, size=12),
               align=['left', 'right']))
])

# fig.update_layout(margin={'r':0,'t':0,'l':0,'b':0})

annotations = []

annotations.append(dict(xref='paper', yref='paper', x=0.5, y=-0.1,
                              xanchor='center', yanchor='top',
                              text='Source: Bureau of Labor Statistics',
                              font=dict(family='Arial',
                                        size=12,
                                        color='rgb(150,150,150)'),
                              showarrow=False))
fig.update_layout(
    annotations=annotations, 
    autosize=True,
    margin=dict(
        autoexpand=True,
#         l=100,
#         r=20,
        t=20,
    ),
)

fig.show()
#hide_input

HTML(fig.to_html(include_plotlyjs='cdn'))

Labor Underutilization for States, Third Quarter of 2019 through Second Quarter of 2020 Averages

  • GitHub Repo
  • ™